<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<title>Planar maps</title>
</head>
<body>
<P align="center"><FONT size="5">How to use the Planar Map demo</FONT></P>
<br>
This program demonstrates the use of planar maps with intersections and 
some other CGAL libraries. There are three kind of traits for planar maps: 1. 
segments planar map - consist only segments. 2. Polylines planar map - 
consist only polylines which are set of connected segments 3. Conics planar 
map - consist only conics which are a curve defined by (at most) two degree 
equation,e.g., segment, circle, ellipse, parabola and hyperbola.
<h3>Choosing traits type for planar map</h3>
<UL>
<LI><A href="#choose_seg">Segments planar map</A></LI>
<LI><A href="#choose_poly">Polylines planar map</A></LI>
<LI><A href="#choose_conic">Conics planar map</A></LI> <!-----
  <LI><A href="#save_file">Writing input to file</A></LI>
      <LI><A href="#print">Print</A></LI>
      <LI><A href="#close_window">Close the current window</A></LI>
      <LI><A href="#quit">Quit the application</A></LI> 
------>
</UL>
<h3>Editing</h3>
<UL>
<LI><A href="#ins">Insert object</A></LI>
<LI><A href="#del">Delete object</A></LI>
<LI><A href="#drg">Drag</A></LI>
<LI><A href="#loc">Point location</A></LI>
<LI><A href="#ray">Vertical ray shooting (up/down)</A></LI>
<LI><A href="#spl">Split</A></LI>
<LI><A href="#meg">Merge</A></LI>
<LI><A href="#env">Lower/Upper envelope</A>
</LI>
</UL>
<h3>Snap Mode</h3>
<UL>
<LI><A href="#snap_point">Snap to point</A></LI>
<LI><A href="#snap_grid">Snap to grid</A></LI>
</UL>
<h3>Options</h3>
<UL>
<LI><A href="#overlay">Overlay</A></LI>
<LI><A href="#properties">Properties</A></LI>
<LI><A href="#show_hide_grid">Show/Hide grid</A></LI>
<LI><A href="#ubf_color">Unbounded edge (background) color</A></LI>
<LI><A href="#edge_color">Edge (planar map) color</A></LI>
<LI><A href="#ver_color">Vertex color</A></LI>
<LI><A href="#pl_str">Point location strategy</A>
</LI>
</UL>
<h3>File Handling</h3>
<UL>
<LI><A href="#format">File format</A></LI>
<LI><A href="#open">Open special format file</A></LI>
<LI><A href="#open_pm">Open planar map file</A></LI>
<LI><A href="#save">Save file</A></LI>
</UL>
<A name="choose_seg"></A><h3>Segments planar map</h3>
By default, this option is selected when starting the application. Press the 
"segment traits" button from the toolbar or go to the menu bar -> options -> 
segments traits.
<A name="choose_poly"></A><h3>Polylines planar map</h3>
Press the "polyline traits" button from the toolbar or go to the menu bar -> 
options -> polyline traits.
<A name="choose_conic"></A><h3>Conics planar map</h3>
Press the "conic traits" button from the toolbar or go to the menu bar -> 
options -> conic traits.
<A name="ins"></A><h3>Insert object</h3>
First, press the "Insert" button, the type of object that can be inserted 
depends on the selected traits type. Segments: left click the mouse to choose 
the source point, move the mouse to determine the segment and close it with 
another left click. Polyline: left click the mouse to choose the source point, 
keep on moving the mouse and left click to add another middle points, right 
click to close it. Conics: when the conic traits is selected there are five 
options of conic curves at the toolbar (segment, circle, ellipse, circle arc, 
5 points arc) segments : circle: left click the mouse to choose the center, 
move the mouse to choose radius and left click to close it. Ellipse : the 
ellipse is obtained by an enclosing rectangle. left click the mouse to choose 
one corner and left click again to choose the opposite corner. Circle arc:
choose three non-collinear points by left clicking on the mouse. 5 points arc:
choose five points by left clicking with the mouse.
<A name="del"></A><h3>Delete</h3>
Press the delete button and left click any object at the planar map to remove 
it.
<A name="drg"></A><h3>Drag</h3>
Press the "drag" button, left click any object while dragging it and release 
the mouse button to put it.
<A name="loc"></A><h3>Point location</h3>
Press the "point location" button, and left click on any point and face 
containing that point will be highlighted.
<A name="ray"></A><h3>Vertical ray shooting</h3>
Shooting direction (up/down) is determined by the button/menu item selected.
Left click on any point at the planar map and a ray will be shot until hitting
a curve or vertex and it will be highlighted.
<A name="spl"></A><h3>Split</h3>
Press the split button, choose a splitter segment (the same as with drawing 
segments) which intersects a curve at the planar map and at the intersection, 
a new vertex will be added, that is the edge will be split.
<A name="meg"></A><h3>Merge</h3>
Press the merge button, choose a subcurve that can be merged by left click, it 
will be painted red and stays red if its mergeable, and then choose another 
neighbor sub_curve that can be merged with it, and it will be painted green 
and the edge will be merged, that is the vertex between them will be removed.
A right click on the mouse at any time will repaint the previous edges selected to
edge color and cancel the current merge action. 
<A name="env"></A><h3>Lower/Upper envelope</h3>
Press the (lower/upper) envelope button, and the (lower/upper) envelope of the
planar map will be highlighted.
<A name="snap_point"></A><h3>Snap to point</h3>
To allow both point and grid snap modes, press the snap mode button or go to 
menu bar -> Snap mode -> Snap Mode. By default the point snap mode is 
activated. Snap to point allows the user to use an existed planar map point in 
insertion of new curves and in the split operation.
<A name="snap_grid"></A><h3>Snap to grid</h3>
After the Snap mode button was clicked (see explanation above), you can choose 
to use the grid snap mode by clicking the Grid Snap Mode button or go to menu 
bar -> Snap mode -> Grid Snap Mode. Snap to grid allows the user to use the grid 
points in insertion of new curves and in the split operation.
<A name="overlay"></A><h3>Overlay</h3>
To overlay two or more planar maps, go to menu bar -> Options -> Overlay. A 
dialog box will open with a list of the current planar maps on the left side. 
Drag and drop the planar maps that you want to overlay to the right side and 
press OK. You can only overlay planar maps with the same traits, therefore, 
after you choose the first one, you can only choose planar maps of the 
same traits.
<A name="properties"></A><h3>Properties</h3>
To change the properties go to menu bar -> Options -> Properties.
<br>
The properties are:
<UL>
<LI>Height - window height.</LI>
<LI>Width - window width.</LI>
<LI>Line width - curves width.</LI>
<LI>Scaling factor - determines the level of the zoom in/out operations.</LI>
<LI>Display mode - allow choosing between different or uniform colors in overlay.</LI>
<LI>Grid cube size - change the size of the grid.</LI>
<LI>Remove curve mode - choose between delete the original curve or the chosen 
sub-curve.</LI>
<LI>Vertex radius - change vertex size.</LI>
<LI>Draw vertex not in intersection - allow to draw only the intersected vertices.</LI>
</UL>
<A name="show_hide_grid"></A><h3>Show/Hide grid</h3>
Allow to see the grid without using the grid snap mode.
<A name="ubf_color"></A><h3>Unbounded face (background) color</h3>
Allow to choose different colors for the unbounded face (equivalent to the background).
<A name="edge_color"></A><h3>Edge (planar map) color</h3>
Allow to choose different colors for the edges (the planar map).
<A name="ver_color"></A><h3>Vertex color</h3>
Allow to choose different colors for the vertices
<A name="pl_str"></A><h3>Point location strategy</h3>
Allow to choose different strategies for point location.
By default, "simple" is selected.
<A name="format"></A><h3>File format</h3>
Files have two main formats:
<UL>
<LI>Planar map format (Arr) - describe all the planar map components.</LI>
<LI>Special format (dat) - the demo knows to read curves in a special format.</LI>
</UL>
<A name="open"></A><h3>Open special format file</h3>
Go to menu bar -> File -> Open Segment/Polyline/Conic File, and load a suitable 
file.
<A name="open_pm"></A><h3>Open planar map file</h3>
Go to menu bar -> File -> Open Segment/Polyline Arr File, and load a suitable file. 
Opening of a conic/polyline Arr file is not supported yet.
<A name="save"></A><h3>Save file</h3>
Go to menu bar -> File -> Save/Save as.
<br>
<br>
<hr> <!-- Created: Mon Jan 13 15:27:00 MET 2003 --> <!-- hhmts start --> Last 
modified: 19/12/2007 <!-- hhmts end -->
</body>
</html>
